cssnode: Remove timestamp from gtk_css_node_validate()
authorBenjamin Otte <otte@redhat.com>
Fri, 20 Feb 2015 16:28:23 +0000 (17:28 +0100)
committerBenjamin Otte <otte@redhat.com>
Wed, 18 Mar 2015 14:23:32 +0000 (15:23 +0100)
GtkCssNode knows its own timestamp.

gtk/gtkcontainer.c
gtk/gtkcssnode.c
gtk/gtkcssnodeprivate.h
gtk/gtkwindow.c

index 306ecf41728b19d3a22d2d5ef9c493d91f0bd105..3fcc221f780f7fa9619b13ec6f1a3414e3810c78 100644 (file)
@@ -1847,8 +1847,7 @@ gtk_container_idle_sizer (GdkFrameClock *clock,
   if (container->priv->restyle_pending)
     {
       container->priv->restyle_pending = FALSE;
-      gtk_css_node_validate (gtk_widget_get_css_node (GTK_WIDGET (container)),
-                             gdk_frame_clock_get_frame_time (gtk_widget_get_frame_clock (GTK_WIDGET (container))));
+      gtk_css_node_validate (gtk_widget_get_css_node (GTK_WIDGET (container)));
     }
 
   /* we may be invoked with a container_resize_queue of NULL, because
index 3de1b6ff035b282d3847f7da2d6cecda778d47a4..cb2b43d62a045e048820503b5b0eb9dd702b1e08 100644 (file)
@@ -824,8 +824,8 @@ gtk_css_node_invalidate (GtkCssNode   *cssnode,
 }
 
 void
-gtk_css_node_validate (GtkCssNode            *cssnode,
-                       gint64                 timestamp)
+gtk_css_node_validate_internal (GtkCssNode *cssnode,
+                                gint64      timestamp)
 {
   GtkCssNode *child;
   GtkCssStyle *new_style;
@@ -873,10 +873,20 @@ gtk_css_node_validate (GtkCssNode            *cssnode,
        child = gtk_css_node_get_next_sibling (child))
     {
       if (child->visible)
-        gtk_css_node_validate (child, timestamp);
+        gtk_css_node_validate_internal (child, timestamp);
     }
 }
 
+void
+gtk_css_node_validate (GtkCssNode *cssnode)
+{
+  gint64 timestamp;
+
+  timestamp = gtk_css_node_get_timestamp (cssnode);
+
+  gtk_css_node_validate_internal (cssnode, timestamp);
+}
+
 gboolean
 gtk_css_node_init_matcher (GtkCssNode     *cssnode,
                            GtkCssMatcher  *matcher)
index 4101037edb85cc1ecfabdf7088f578703bbe4c02..38cd36d89182c459f80bfc9f5f4611340a5f7304 100644 (file)
@@ -148,8 +148,7 @@ void                    gtk_css_node_invalidate_frame_clock
                                                          gboolean               just_timestamp);
 void                    gtk_css_node_invalidate         (GtkCssNode            *cssnode,
                                                          GtkCssChange           change);
-void                    gtk_css_node_validate           (GtkCssNode            *cssnode,
-                                                         gint64                 timestamp);
+void                    gtk_css_node_validate           (GtkCssNode            *cssnode);
 void                    gtk_css_node_set_invalid        (GtkCssNode            *node,
                                                          gboolean               invalid);
 
index bff85179690d1fde1ede9d1ca3c8c509ed97614a..4378ca65851489a9fc2985be72ee356068c26829 100644 (file)
@@ -5847,8 +5847,7 @@ gtk_window_show (GtkWidget *widget)
 
   need_resize = _gtk_widget_get_alloc_needed (widget) || !gtk_widget_get_realized (widget);
 
-  gtk_css_node_validate (gtk_widget_get_css_node (widget),
-                         g_get_monotonic_time ());
+  gtk_css_node_validate (gtk_widget_get_css_node (widget));
 
   if (need_resize)
     {